package com.ma.advanced;

public class dichotomy {

    /**
     * 利用二分法在有序数组（小到大）中查找某数
     * @param sortedArr
     * @param num
     * @return
     */
    public static boolean exist(int[] sortedArr,int num){
        if(sortedArr==null||sortedArr.length==0){
            return false;
        }
        int L=0;//左
        int R=sortedArr.length-1;//右
        int mid=0;
        while (L<R){
            mid=L+((R-L)>>1);//对半劈
            if(sortedArr[mid]==num){
                return true;
            }else if(sortedArr[mid]>num){
                R=mid-1;
            }else {
                L=mid+1;
            }
        }
        return sortedArr[L]==num;
    }


}
